// 小美有很多的彩虹糖，每颗彩虹糖都有一个颜色，她每天可以吃两颗彩虹糖，如果今天吃的彩虹糖组合是之前没吃过的组合，则小美今天会很高兴。
//
// 例如，小美有 6 颗彩虹糖，颜色分别是 ![[1,1,4,5,1,4]]。
//
// 小红第一天吃一组颜色为 1 和 4 的彩虹糖，小美会很高兴；
//
// 第二天吃一组颜色为 4 和 1 的彩虹糖，小美不会很高兴；
//
// 第三天小美吃一组颜色为 1 和 5 的彩虹糖，小美会很高兴，此时小美共有 2 天很高兴。
//
// 小美想知道，她最多有几天会很高兴。
//
// 输入描述
//
// 第一行输入一个整数n(1<=n<=10^5)表示彩虹糖数量。
//
// 第二行输入n个整数表示彩虹糖颜色a(1<=ai<=10^9)。
//
// 输出描述
//
// 输出一个整数表示答案。
// * 思路
//? 先统计每个颜色的数量，把颜色加入优先队列。s每次取出数量最少的那种颜色c，然后从队列里取min(c的数量，队列长度)个颜色，依次数量减一，ans加一，如果取出的颜色的数量不为0就再放回队列。
//? 如果最后c的数量仍然大于等于2，ans再加一。
//? 队列为空时输出ans。
